﻿//统一文件为utf-8编码编译
#pragma execution_character_set("utf-8")
///////////////////////////////////////////////////////////////////////////
// 文件名:     pagehelper.h
// 描述:
// 作者:      颜磊
// 创建时间:   2024-06-09 00:55
///////////////////////////////////////////////////////////////////////////
#ifndef PAGEHELPER_H
#define PAGEHELPER_H

#include <QWidget>
#include <QDebug>
namespace Ui {
class PageHelper;
}

class PageHelper : public QWidget
{
    Q_OBJECT

public:
    explicit PageHelper(QWidget *parent = nullptr);
    ~PageHelper();
    qlonglong getNowPage() const;

    qlonglong getPageTotal() const;

    void setPageCount(int value);

public slots:
    void setItemTotal(const qlonglong &value);

signals:
    void signal_goto(qlonglong pageNum,int pageCount);
private slots:


    void on_beginPage_clicked();

    void on_endPage_clicked();

    void on_nextPageBtn_clicked();

    void on_lastPageBtn_clicked();

    void on_gotoBtn_clicked();

    void on_lastPage_clicked();

    void on_nextPage_clicked();

    void on_pageCount_activated(const QString &arg1);

private:
    Ui::PageHelper *ui;

private:
    qlonglong itemTotal;//条目总数
    int pageCount;//页显示条目
    qlonglong pageTotal;//页码总数

    qlonglong beginPage;
    qlonglong lastPage;
    qlonglong nowPage;
    qlonglong nextPage;
    qlonglong endPage;
private:
    void pageChange();
    void resetContol();//重置控件
};

#endif // PAGEHELPER_H
